﻿using System;
using System.CodeDom.Compiler;
using System.Diagnostics;
using Google.Protobuf;
using Google.Protobuf.Collections;
using Google.Protobuf.Reflection;

namespace EggLink.DanhengServer.Proto
{
	// Token: 0x020001F9 RID: 505
	[DebuggerDisplay("{ToString(),nq}")]
	public sealed class ChessRogueAreaInfo : IMessage<ChessRogueAreaInfo>, IMessage, IEquatable<ChessRogueAreaInfo>, IDeepCloneable<ChessRogueAreaInfo>, IBufferMessage
	{
		// Token: 0x170006A4 RID: 1700
		// (get) Token: 0x060016C9 RID: 5833 RVA: 0x00040E19 File Offset: 0x0003F019
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageParser<ChessRogueAreaInfo> Parser
		{
			get
			{
				return ChessRogueAreaInfo._parser;
			}
		}

		// Token: 0x170006A5 RID: 1701
		// (get) Token: 0x060016CA RID: 5834 RVA: 0x00040E20 File Offset: 0x0003F020
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageDescriptor Descriptor
		{
			get
			{
				return ChessRogueAreaInfoReflection.Descriptor.MessageTypes[0];
			}
		}

		// Token: 0x170006A6 RID: 1702
		// (get) Token: 0x060016CB RID: 5835 RVA: 0x00040E32 File Offset: 0x0003F032
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		MessageDescriptor IMessage.Descriptor
		{
			get
			{
				return ChessRogueAreaInfo.Descriptor;
			}
		}

		// Token: 0x060016CC RID: 5836 RVA: 0x00040E39 File Offset: 0x0003F039
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public ChessRogueAreaInfo()
		{
		}

		// Token: 0x060016CD RID: 5837 RVA: 0x00040E58 File Offset: 0x0003F058
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public ChessRogueAreaInfo(ChessRogueAreaInfo other) : this()
		{
			this.allowSelectCellIdList_ = other.allowSelectCellIdList_.Clone();
			this.cell_ = ((other.cell_ != null) ? other.cell_.Clone() : null);
			this.curBoardId_ = other.curBoardId_;
			this.oMMBIAFIGMB_ = ((other.oMMBIAFIGMB_ != null) ? other.oMMBIAFIGMB_.Clone() : null);
			this.curId_ = other.curId_;
			this.layerStatus_ = other.layerStatus_;
			this.historyCell_ = other.historyCell_.Clone();
			this._unknownFields = UnknownFieldSet.Clone(other._unknownFields);
		}

		// Token: 0x060016CE RID: 5838 RVA: 0x00040EFA File Offset: 0x0003F0FA
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public ChessRogueAreaInfo Clone()
		{
			return new ChessRogueAreaInfo(this);
		}

		// Token: 0x170006A7 RID: 1703
		// (get) Token: 0x060016CF RID: 5839 RVA: 0x00040F02 File Offset: 0x0003F102
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RepeatedField<uint> AllowSelectCellIdList
		{
			get
			{
				return this.allowSelectCellIdList_;
			}
		}

		// Token: 0x170006A8 RID: 1704
		// (get) Token: 0x060016D0 RID: 5840 RVA: 0x00040F0A File Offset: 0x0003F10A
		// (set) Token: 0x060016D1 RID: 5841 RVA: 0x00040F12 File Offset: 0x0003F112
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public CellInfo Cell
		{
			get
			{
				return this.cell_;
			}
			set
			{
				this.cell_ = value;
			}
		}

		// Token: 0x170006A9 RID: 1705
		// (get) Token: 0x060016D2 RID: 5842 RVA: 0x00040F1B File Offset: 0x0003F11B
		// (set) Token: 0x060016D3 RID: 5843 RVA: 0x00040F23 File Offset: 0x0003F123
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public uint CurBoardId
		{
			get
			{
				return this.curBoardId_;
			}
			set
			{
				this.curBoardId_ = value;
			}
		}

		// Token: 0x170006AA RID: 1706
		// (get) Token: 0x060016D4 RID: 5844 RVA: 0x00040F2C File Offset: 0x0003F12C
		// (set) Token: 0x060016D5 RID: 5845 RVA: 0x00040F34 File Offset: 0x0003F134
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public NDFCFDPNEJB OMMBIAFIGMB
		{
			get
			{
				return this.oMMBIAFIGMB_;
			}
			set
			{
				this.oMMBIAFIGMB_ = value;
			}
		}

		// Token: 0x170006AB RID: 1707
		// (get) Token: 0x060016D6 RID: 5846 RVA: 0x00040F3D File Offset: 0x0003F13D
		// (set) Token: 0x060016D7 RID: 5847 RVA: 0x00040F45 File Offset: 0x0003F145
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public uint CurId
		{
			get
			{
				return this.curId_;
			}
			set
			{
				this.curId_ = value;
			}
		}

		// Token: 0x170006AC RID: 1708
		// (get) Token: 0x060016D8 RID: 5848 RVA: 0x00040F4E File Offset: 0x0003F14E
		// (set) Token: 0x060016D9 RID: 5849 RVA: 0x00040F56 File Offset: 0x0003F156
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public ChessRogueBoardCellStatus LayerStatus
		{
			get
			{
				return this.layerStatus_;
			}
			set
			{
				this.layerStatus_ = value;
			}
		}

		// Token: 0x170006AD RID: 1709
		// (get) Token: 0x060016DA RID: 5850 RVA: 0x00040F5F File Offset: 0x0003F15F
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RepeatedField<ChessRogueHistoryCellInfo> HistoryCell
		{
			get
			{
				return this.historyCell_;
			}
		}

		// Token: 0x060016DB RID: 5851 RVA: 0x00040F67 File Offset: 0x0003F167
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override bool Equals(object other)
		{
			return this.Equals(other as ChessRogueAreaInfo);
		}

		// Token: 0x060016DC RID: 5852 RVA: 0x00040F78 File Offset: 0x0003F178
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public bool Equals(ChessRogueAreaInfo other)
		{
			return other != null && (other == this || (this.allowSelectCellIdList_.Equals(other.allowSelectCellIdList_) && object.Equals(this.Cell, other.Cell) && this.CurBoardId == other.CurBoardId && object.Equals(this.OMMBIAFIGMB, other.OMMBIAFIGMB) && this.CurId == other.CurId && this.LayerStatus == other.LayerStatus && this.historyCell_.Equals(other.historyCell_) && object.Equals(this._unknownFields, other._unknownFields)));
		}

		// Token: 0x060016DD RID: 5853 RVA: 0x00041028 File Offset: 0x0003F228
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override int GetHashCode()
		{
			int num = 1;
			num ^= this.allowSelectCellIdList_.GetHashCode();
			if (this.cell_ != null)
			{
				num ^= this.Cell.GetHashCode();
			}
			if (this.CurBoardId != 0U)
			{
				num ^= this.CurBoardId.GetHashCode();
			}
			if (this.oMMBIAFIGMB_ != null)
			{
				num ^= this.OMMBIAFIGMB.GetHashCode();
			}
			if (this.CurId != 0U)
			{
				num ^= this.CurId.GetHashCode();
			}
			if (this.LayerStatus != ChessRogueBoardCellStatus.Idle)
			{
				num ^= this.LayerStatus.GetHashCode();
			}
			num ^= this.historyCell_.GetHashCode();
			if (this._unknownFields != null)
			{
				num ^= this._unknownFields.GetHashCode();
			}
			return num;
		}

		// Token: 0x060016DE RID: 5854 RVA: 0x000410E7 File Offset: 0x0003F2E7
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override string ToString()
		{
			return JsonFormatter.ToDiagnosticString(this);
		}

		// Token: 0x060016DF RID: 5855 RVA: 0x000410EF File Offset: 0x0003F2EF
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void WriteTo(CodedOutputStream output)
		{
			output.WriteRawMessage(this);
		}

		// Token: 0x060016E0 RID: 5856 RVA: 0x000410F8 File Offset: 0x0003F2F8
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalWriteTo(ref WriteContext output)
		{
			if (this.CurId != 0U)
			{
				output.WriteRawTag(8);
				output.WriteUInt32(this.CurId);
			}
			if (this.LayerStatus != ChessRogueBoardCellStatus.Idle)
			{
				output.WriteRawTag(32);
				output.WriteEnum((int)this.LayerStatus);
			}
			this.allowSelectCellIdList_.WriteTo(ref output, ChessRogueAreaInfo._repeated_allowSelectCellIdList_codec);
			if (this.cell_ != null)
			{
				output.WriteRawTag(82);
				output.WriteMessage(this.Cell);
			}
			if (this.oMMBIAFIGMB_ != null)
			{
				output.WriteRawTag(90);
				output.WriteMessage(this.OMMBIAFIGMB);
			}
			if (this.CurBoardId != 0U)
			{
				output.WriteRawTag(96);
				output.WriteUInt32(this.CurBoardId);
			}
			this.historyCell_.WriteTo(ref output, ChessRogueAreaInfo._repeated_historyCell_codec);
			if (this._unknownFields != null)
			{
				this._unknownFields.WriteTo(ref output);
			}
		}

		// Token: 0x060016E1 RID: 5857 RVA: 0x000411C8 File Offset: 0x0003F3C8
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public int CalculateSize()
		{
			int num = 0;
			num += this.allowSelectCellIdList_.CalculateSize(ChessRogueAreaInfo._repeated_allowSelectCellIdList_codec);
			if (this.cell_ != null)
			{
				num += 1 + CodedOutputStream.ComputeMessageSize(this.Cell);
			}
			if (this.CurBoardId != 0U)
			{
				num += 1 + CodedOutputStream.ComputeUInt32Size(this.CurBoardId);
			}
			if (this.oMMBIAFIGMB_ != null)
			{
				num += 1 + CodedOutputStream.ComputeMessageSize(this.OMMBIAFIGMB);
			}
			if (this.CurId != 0U)
			{
				num += 1 + CodedOutputStream.ComputeUInt32Size(this.CurId);
			}
			if (this.LayerStatus != ChessRogueBoardCellStatus.Idle)
			{
				num += 1 + CodedOutputStream.ComputeEnumSize((int)this.LayerStatus);
			}
			num += this.historyCell_.CalculateSize(ChessRogueAreaInfo._repeated_historyCell_codec);
			if (this._unknownFields != null)
			{
				num += this._unknownFields.CalculateSize();
			}
			return num;
		}

		// Token: 0x060016E2 RID: 5858 RVA: 0x0004128C File Offset: 0x0003F48C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(ChessRogueAreaInfo other)
		{
			if (other == null)
			{
				return;
			}
			this.allowSelectCellIdList_.Add(other.allowSelectCellIdList_);
			if (other.cell_ != null)
			{
				if (this.cell_ == null)
				{
					this.Cell = new CellInfo();
				}
				this.Cell.MergeFrom(other.Cell);
			}
			if (other.CurBoardId != 0U)
			{
				this.CurBoardId = other.CurBoardId;
			}
			if (other.oMMBIAFIGMB_ != null)
			{
				if (this.oMMBIAFIGMB_ == null)
				{
					this.OMMBIAFIGMB = new NDFCFDPNEJB();
				}
				this.OMMBIAFIGMB.MergeFrom(other.OMMBIAFIGMB);
			}
			if (other.CurId != 0U)
			{
				this.CurId = other.CurId;
			}
			if (other.LayerStatus != ChessRogueBoardCellStatus.Idle)
			{
				this.LayerStatus = other.LayerStatus;
			}
			this.historyCell_.Add(other.historyCell_);
			this._unknownFields = UnknownFieldSet.MergeFrom(this._unknownFields, other._unknownFields);
		}

		// Token: 0x060016E3 RID: 5859 RVA: 0x0004136A File Offset: 0x0003F56A
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(CodedInputStream input)
		{
			input.ReadRawMessage(this);
		}

		// Token: 0x060016E4 RID: 5860 RVA: 0x00041374 File Offset: 0x0003F574
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalMergeFrom(ref ParseContext input)
		{
			uint num;
			while ((num = input.ReadTag()) != 0U)
			{
				if (num <= 66U)
				{
					if (num <= 32U)
					{
						if (num == 8U)
						{
							this.CurId = input.ReadUInt32();
							continue;
						}
						if (num == 32U)
						{
							this.LayerStatus = (ChessRogueBoardCellStatus)input.ReadEnum();
							continue;
						}
					}
					else if (num == 64U || num == 66U)
					{
						this.allowSelectCellIdList_.AddEntriesFrom(ref input, ChessRogueAreaInfo._repeated_allowSelectCellIdList_codec);
						continue;
					}
				}
				else if (num <= 90U)
				{
					if (num == 82U)
					{
						if (this.cell_ == null)
						{
							this.Cell = new CellInfo();
						}
						input.ReadMessage(this.Cell);
						continue;
					}
					if (num == 90U)
					{
						if (this.oMMBIAFIGMB_ == null)
						{
							this.OMMBIAFIGMB = new NDFCFDPNEJB();
						}
						input.ReadMessage(this.OMMBIAFIGMB);
						continue;
					}
				}
				else
				{
					if (num == 96U)
					{
						this.CurBoardId = input.ReadUInt32();
						continue;
					}
					if (num == 106U)
					{
						this.historyCell_.AddEntriesFrom(ref input, ChessRogueAreaInfo._repeated_historyCell_codec);
						continue;
					}
				}
				this._unknownFields = UnknownFieldSet.MergeFieldFrom(this._unknownFields, ref input);
			}
		}

		// Token: 0x04000967 RID: 2407
		private static readonly MessageParser<ChessRogueAreaInfo> _parser = new MessageParser<ChessRogueAreaInfo>(() => new ChessRogueAreaInfo());

		// Token: 0x04000968 RID: 2408
		private UnknownFieldSet _unknownFields;

		// Token: 0x04000969 RID: 2409
		public const int AllowSelectCellIdListFieldNumber = 8;

		// Token: 0x0400096A RID: 2410
		private static readonly FieldCodec<uint> _repeated_allowSelectCellIdList_codec = FieldCodec.ForUInt32(66U);

		// Token: 0x0400096B RID: 2411
		private readonly RepeatedField<uint> allowSelectCellIdList_ = new RepeatedField<uint>();

		// Token: 0x0400096C RID: 2412
		public const int CellFieldNumber = 10;

		// Token: 0x0400096D RID: 2413
		private CellInfo cell_;

		// Token: 0x0400096E RID: 2414
		public const int CurBoardIdFieldNumber = 12;

		// Token: 0x0400096F RID: 2415
		private uint curBoardId_;

		// Token: 0x04000970 RID: 2416
		public const int OMMBIAFIGMBFieldNumber = 11;

		// Token: 0x04000971 RID: 2417
		private NDFCFDPNEJB oMMBIAFIGMB_;

		// Token: 0x04000972 RID: 2418
		public const int CurIdFieldNumber = 1;

		// Token: 0x04000973 RID: 2419
		private uint curId_;

		// Token: 0x04000974 RID: 2420
		public const int LayerStatusFieldNumber = 4;

		// Token: 0x04000975 RID: 2421
		private ChessRogueBoardCellStatus layerStatus_;

		// Token: 0x04000976 RID: 2422
		public const int HistoryCellFieldNumber = 13;

		// Token: 0x04000977 RID: 2423
		private static readonly FieldCodec<ChessRogueHistoryCellInfo> _repeated_historyCell_codec = FieldCodec.ForMessage<ChessRogueHistoryCellInfo>(106U, ChessRogueHistoryCellInfo.Parser);

		// Token: 0x04000978 RID: 2424
		private readonly RepeatedField<ChessRogueHistoryCellInfo> historyCell_ = new RepeatedField<ChessRogueHistoryCellInfo>();
	}
}
